package com.gas;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * RqjgGridLayerEntity
 * 燃气监管_网格信息表 Entity
 * @author enc
 * @since 2025-09-01
 */
@NoArgsConstructor
@AllArgsConstructor
@Data
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@TableName("rqjg_grid_layer")
public class RqjgGridLayerEntity implements Serializable {

    private static final long serialVersionUID = 1L;

    @TableId(type = IdType.AUTO)
    private Long id;

    /**
     * 网格唯一标识
     */
    private Long gridNumber;

    /**
     * 企业唯一标识
     */
    private String companyCode;

    /**
     * 是否有建设材料, 1-是， 0-否
     */
    private Boolean hasConstructionMaterial;

    /**
     * 是否有定检报告, 1-是， 0-否
     */
    private Boolean hasInspectionReport;

    /**
     * 管网巡线是否达标, 1-达标， 0-未达标
     */
    private Boolean pipePatrolPassed;

    /**
     * 是否本年新增, 1-是，0-否
     */
    private Boolean currentYearAdd;

    /**
     * 是否本年废弃, 1-是, 0-否
     */
    private Boolean currentYearAbandoned;

    /**
     * 视频设备是否在线,1-是, 0-否
     */
    private Boolean videoOnline;

    /**
     * 物联设备是否在线, 1-是, 0-否
     */
    private Boolean deviceOnline;

    /**
     * 物联设备是否告警, 1-是, 0-否
     */
    private Boolean deviceAlarm;

    /**
     * 是否存在一般隐患, 1-是, 0-否
     */
    private Boolean hasGeneralHazard;

    /**
     * 是否存在重大隐患, 1-是, 0-否
     */
    private Boolean hasMajorHazard;

    /**
     * 老旧改, 是否立即改造, 1-是, 0-否
     */
    private Boolean oldRenovationImmediate;

    /**
     * 老旧改, 是否限期改造, 1-是, 0-否
     */
    private Boolean oldRenovationSpecified;

    /**
     * 老旧改, 是否待评估超20年, 1-是, 0-否
     */
    private Boolean oldRenovationWaiting;

    /**
     * 是否有风险点, 1-是, 0-否
     */
    private Boolean hasRiskPoint;

    /**
     * 是否有重大风险点, 1-是, 0-否
     */
    private Boolean hasMajorRiskPoint;


//    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
//    private LocalDateTime updateTime;
//
//    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
//    private LocalDateTime createTime;
//
//    @TableField(typeHandler = com.gas.monitor.dao.postgresql.gis.typehandler.GeometryTypeHandler.class)
//    private String geom;

    /**
     * 所属国标行政区划代码
     */
    private String postcode;

    /**
     * 压力等级编码（超高压1、高压2、次高压3、中压4、低压5、未知6）
     */
    private Integer pressureratingcode;

    /**
     * 老旧管网，铸铁1，大于10年小于20年2，大于20年3，竣工日期为空4，其他5
     */
    private Integer oldTypeC;
}
